package itdep.domain.student;

import ga.hibernate.OrderedEnum;
import ga.i18n.Translatable;
import itdep.domain.TranslationType;

import java.util.Collection;

/**
 * @author $Author: ikhalopik $
 * @version $Revision: 6 $   $Date: 2010-06-13 18:06:55 +0000 (Sun, 13 Jun 2010) $
 */
public enum EducationStatus implements OrderedEnum, Translatable {
	EXPELLED(1, "expelled"),
	TRANSFERED(3, "transfered"),
	STUDYING(4, "studying"),
	GRADUATED(5, "graduated"),
	ON_VACATION(6, "on-vacation"),
	/**
	 * values for temporary status of student
	 */
	EXPELLING(7, "expelling"),
	TRANSFERING(8, "transferring"),
	GRADUATING(9, "graduating"),
	RESTORING(10, "restoring"),
	RESTORING_FROM_VACATION(11, "restoring-from-vacation");

	private int order;
	private String code;

	EducationStatus(int order, String code) {
		this.order = order;
		this.code = code;
	}


	@Override
	public int getOrder() {
		return order;
	}

	@Override
	public String getTranslationCode() {
		return code;
	}

	@Override
	public String getTranslationType() {
		return "education-status";
	}

	@Override
	public Collection<String> getTranslationVariants() {
		return TranslationType.STANDARD.getVariants();
	}
}